$(document).ready(function(){
    fancyboxChooseMenu();
    loadAjaxListDataTable();
    updateRolePermission();
});

function fancyboxChooseMenu(){
    $(".input-choose").fancybox({
        'autoScale'            : true,
        'transitionIn'        : 'none',
        'transitionOut'        : 'none',
        'onComplete'    : function(){
            //alert('len roi');
            fancyboxChooseMenuCallback();
        }
    });
}

function fancyboxChooseMenuCallback(){
    $("#fancybox-wrap .choose-value").click(function(){
        var val = $(this).attr('rel');
        $("input.insert-value").val(val);
        $.fancybox.close();
        return false;
    });
    
    $("#fancybox-wrap a.popup-link").unbind("click").click(function(){
        var url = $(this).attr("href");
        $.get(url, function(html){
            $("#fancybox-content").html(html);
            //$.fancybox.center();
            $.fancybox.resize();
            fancyboxChooseMenuCallback();
        });
        return false;
    });
    
    $("#fancybox-wrap .btn-choose-custom-link").unbind("click").click(function(){
        var val = $("#fancybox-wrap").find('input#popup-custom-link').val();
        
        if(val != ''){
            $("input.insert-value").val(val);
            $('input#popup-custom-link').removeClass('errorbox');
            $.fancybox.close();
        }else{
            $('input#popup-custom-link').addClass('errorbox');
        }
        
        return false;
    });
    
    $("#fancybox-wrap a.popup-page").unbind("click").click(function(){
        var url = $(this).attr("href");
        $.fancybox({
            'href' : url,
            'autoScale'            : true,
            'transitionIn'        : 'none',
            'transitionOut'        : 'none',
            'onComplete'    : function(){
                //alert('len roi');
                fancyboxChooseMenuCallback();
            }
        });
        return false;
    });
       
}

function updateRolePermission(){
    $(".permission-table input.change-premission:checkbox").unbind("click").click(function(){
        var $op = $(this).parent();
        $op.html('....');
        
        var url = $(this).attr("rel");
        $.get(url, function(html){
            $op.html(html);
            $op.addClass('permission-up');
            updateRolePermission();
        });
        return false;
    });
}

function loadAjaxListDataTable(){
    var url = $("#table-list-load").attr("rel");
    if(url !== undefined){
        $.get(url, function(html){
            $("#table-list-load").html(html);
            listAjaxListDataTablePaging();
        });
    }
    return false;
}

function listAjaxListDataTablePaging(){
    $(".pagination a").unbind("click").click(function(){
        if( !$(this).hasClass('current') ){
            var url = $(this).attr("href");
            $.get(url, function(html){
                $("#table-list-load").html(html);
                listAjaxListDataTablePaging();
            });
        }
        return false;
    });
}

/*
function listDesignsPaging(){
    $(".pagination a").unbind("click").click(function(){
        if( !$(this).hasClass('current') ){
            var url = $(this).attr("href");
            $.get(url, function(html){
                $("#listDesign").html(html);
                listDesignsPaging();
                bindDesignApprove();
                bindDesignDisapprove();
                bindDesignDelete();
                bindEditDesignCode();
                checkAllListCheckBox();
            });
        }
        return false;
    });
    listDesignPopupWindow();
}

function listDesignPopupWindow(){
    $('.design-details-admin').popupWindow({ 
        height:500, 
        width:800,
        centerBrowser:1,
        scrollbars: 1
    });
}

function bindDesignApprove(){
    $("table#listDesign a.design-approve").unbind("click").click(function(){
        var url = $(this).attr("href");
        var $parent = $(this).parent();
        $parent.html("Loading...");
        $.post(url, function(html){
            $parent.html(html);
            bindDesignDisapprove();
        });
        return false;
    });
}

function bindDesignDisapprove(){
    $("table#listDesign a.design-disapprove").unbind("click").click(function(){
        var url = $(this).attr("href");
        var $parent = $(this).parent();
        $parent.html("Loading...");
        $.post(url, function(html){
            $parent.html(html);
            bindDesignApprove();
        });
        return false;
    });
}

function bindDesignDelete(){
    $("table#listDesign a.design-delete").unbind("click").click(function(){
        var r=confirm("Bạn muốn xóa ?");
        if (r==true){
            var url = $(this).attr("href");
            var $parent = $(this).parent();
            $parent.html("Loading...");
            $.post(url, function(html){
                $("#listDesign").html(html);
                
                listDesignPopupWindow();
                listDesignsPaging();
                bindDesignApprove();
                bindDesignDisapprove();
                bindDesignDelete();
                
            });
        }

        return false;
    });
}

function bindEditDesignCode(){
    $('.edit_design_code').editable(ctx+'admin/design/code/update', { 
        submitdata : function(value, settings) {
            return {designId: $(this).attr("rel")};
        },
        indicator : 'Lưu...',
        tooltip   : 'Nhập mới...'
     });
}

function designs_actions_confirm()
{
    var flag = false;
    var data = [];
    $("input[type=checkbox]:checked").each(function(){
        data.push( $(this).val() );
        flag = true;
    });
    
    if(flag==false){
        alert("Bạn cần chọn ít nhất 1 item!");
        return false;
    }
    
    $action_value = $("select#select-designs-action").val();
    var url = $("select#select-designs-action: option:selected").attr("rel");

    var msg = '';
    
    switch($action_value)
    {
        case "approve":
            msg = 'Bạn muốn kiểm duyệt các mẫu thiết kế?';
              var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "disapprove":
            msg = 'Bạn muốn bỏ kiểm duyệt các mẫu thiết kế?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "frontend":
            msg = 'Bạn muốn hiển thị ngoài trang chủ?';
              var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "disfrontend":
            msg = 'Bạn không muốn hiển thị ngoài trang chủ?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "delete":
            msg = 'Bạn muốn xóa các mẫu thiết kế?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "delete_blog":
            msg = 'Bạn muốn xóa các bài viết này?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
        break;
        case "delete_question":
            msg = 'Bạn muốn xóa các câu hỏi này?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
        break;
        
        case "delete-design-comment":
            msg = 'Bạn muốn xóa các comment này?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
        break;
        
        case "approve-game":
            msg = 'Bạn muốn kiểm duyệt các mẫu game?';
              var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "disapprove-game":
            msg = 'Bạn muốn bỏ kiểm duyệt các mẫu game?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "delete-game":
            msg = 'Bạn muốn xóa các mẫu game?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "delete-game-comment":
            msg = 'Bạn muốn xóa các game này?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
        break;
        case "delete-gallery-design":
            msg = 'Bạn muốn xóa các design này?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
        break;
        case "delete-gallery-category":
            msg = 'Bạn muốn xóa các category này?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
        break;
        case "delete-video":
            msg = 'Bạn muốn xóa các video này?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
        break;
        case "approve-video":
            msg = 'Bạn muốn kiểm duyệt các video?';
              var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "disapprove-video":
            msg = 'Bạn muốn bỏ kiểm duyệt các video?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "approve-blog":
            msg = 'Bạn muốn kiểm duyệt các video?';
              var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "disapprove-blog":
            msg = 'Bạn muốn bỏ kiểm duyệt các video?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;          
        case "approve-gallery-category":
            msg = 'Bạn muốn duyệt các category?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "disapprove-gallery-category":
            msg = 'Bạn muốn bỏ kiểm duyệt các category?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "approve-design-category":
            msg = 'Bạn muốn duyệt các category?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        case "disapprove-design-category":
            msg = 'Bạn muốn bỏ kiểm duyệt các category?';
            var r=confirm(msg);
            if (r==true){
                designs_actions(url,data);
            }
          break;
        default:
            alert("Chọn hành động muốn thực hiện!");
    }
    
    return false;
}

function designs_actions(url,data){
    $.post(url,{"designIds[]":data},function(html){
        $("input[type=checkbox]:checked").each(function(){
            $(this).attr('checked', false);
        });
        window.location.reload();
    });
    return false;
}

function sendActivationMail(){
    var n = confirm("Bạn sẽ gửi email kích hoạt cho users?");
    if(n){
        alert("Vui lòng chờ đợi, đừng yêu cầu nhiều lần để tránh trường hợp mỗi user nhận nhiều hơn 1 email.")
        $("#active-mail-form").submit();
    }
}

function loadAjaxListDataTable(){
    var url = $("#listDesign").attr("rel");
    if(url !== undefined){
        $.get(url, function(html){
            $("#listDesign").html(html);
            checkAllListCheckBox();
            listDesignsPaging();
            bindDesignApprove();
            bindDesignDisapprove();
            bindDesignDelete();
            bindEditDesignCode();
        });
    }
    return false;
}

function checkAllListCheckBox(){
    $('.check-all').click(
            function(){
                $(this).parent().parent().parent().parent().find("input[type='checkbox']").attr('checked', $(this).is(':checked'));   
            }
    );
}

function choose_user(){
    $(".choose-user").fancybox({
        'overlayShow'    :    true,
        'showNavArrows' : false,
        'onComplete'    : function(){
            fancyboxChooseUserCallback();
            listChooseUserPaging();
            userChooseSearch();
        }
    });
}

function fancyboxChooseUserCallback(){
    $("#fancybox-wrap .c-insert-user").click(function(){
        var val = $(this).attr('rel');
        $("input.i_user_choose_id").val(val);
        $(".i-user-choose-username").html( $(this).attr('relUserName') );
        $.fancybox.close();
        listChooseUserPaging();
        userChooseSearch();
        return false;
    });
}

//----
function choose_design_category(){
    $(".choose-design-category").fancybox({
        'overlayShow'    :    true,
        'showNavArrows' : false,
        'onComplete'    : function(){
        fancyboxChooseDesignCategoryCallback();
            listChooseUserPaging();
            userChooseSearch();
        }
    });
}

function fancyboxChooseDesignCategoryCallback(){
    $("#fancybox-wrap .c-insert-design-category").click(function(){
        var val = $(this).attr('rel');
        $("input.i_design_category_choose_id").val(val);
        $(".i-design-category-choose-name").html( $(this).attr('relUserName') );
        $.fancybox.close();
        listChooseUserPaging();
        userChooseSearch();
        return false;
    });
}
function listChooseUserPaging(){
    $(".pagination-popup a").unbind("click").click(function(){
        if( !$(this).hasClass('current') ){
            var url = $(this).attr("href");
            $.get(url, function(html){
                $("#fancybox-content").html(html);
                fancyboxChooseUserCallback();
                listChooseUserPaging();
                userChooseSearch();
            });
        }
        return false;
    });
}

function userChooseSearch(){
    $("#btn-choose-search").unbind("click").click(function(){
        var search = $('input#user-choose-search').val();
        
        if(search == ''){ search = 'user-search'; }
        
        var url = $(this).attr('rel') + search + '/1';
        $("#table-user-search").html('Dang tai du lieu!');
        
        $.get(url, function(html){
            $("#fancybox-content").html(html);
            fancyboxChooseUserCallback();
            listChooseUserPaging();
            userChooseSearch();
        });
        return false;
    });
}

function commentDesignChooseSearch(){
    $("#btn-comment-choose-search").unbind("click").click(function(){
        var option = $('select#comment-option-select').val();
        var search = $('input#comment-choose-search').val();

        if(search == ''){ search = 'design-search'; }
        
        var url = $(this).attr('rel') + search + '/' + option + '/1';
        
        $.get(url, function(html){
            $("#listDesign").html(html);
            checkAllListCheckBox();
            listDesignsPaging();
            bindDesignApprove();
            bindDesignDisapprove();
            bindDesignDelete();
        });

        return false;
    });
}

function commentGameChooseSearch(){
    $("#btn-comment-game-choose-search").unbind("click").click(function(){
        var option = $('select#comment-option-select').val();
        var search = $('input#comment-choose-search').val();

        if(search == ''){ search = 'game-search'; }
        
        var url = $(this).attr('rel') + search + '/' + option + '/1';
        
        $.get(url, function(html){
            $("#listDesign").html(html);
            checkAllListCheckBox();
            listDesignsPaging();
            bindDesignApprove();
            bindDesignDisapprove();
            bindDesignDelete();
        });

        return false;
    });
}
function userSearch(){
    $("select#user-option-select").change(function () {
        if ( $(this).val() == 0){
            $('input#user-search').hide();
            $('input#user-search').val('');
        }else{
            $('input#user-search').show();
        }
    });
    
    if ( $("select#user-option-select").val() == 0){
        $('input#user-search').hide();
    }else{
        $('input#user-search').show();
    }
    
    $("#btn-user-search").unbind("click").click(function(){
        var option = $('select#user-option-select').val();
        var search = $('input#user-search').val();

        if(search == ''){ search = 'user-search'; }
        
        var url = $(this).attr('rel') + option + '/' + search;
        
        $.get(url, function(html){
            $("#listDesign").html(html);
            checkAllListCheckBox();
            listDesignsPaging();
            bindDesignApprove();
            bindDesignDisapprove();
            bindDesignDelete();
        });

        return false;
    });
}

function checkValidateUserForm(){
    $("input[name=_sex]").click(function(){
        $("input.form_sex").val($(this).val());
    });
    
    $("input#form_username").change(function(){
        Xoan.checkUsernameDuplicated(this, function(ret){
            if(ret){
                ret = eval('('+ret+')');
                
                if(ret.status == 'true'){
                    Xoan.FORM_USERNAME_FLAG = false;
                    $(".form_username_duplicated").show();
                    $(".form_username_required").hide();
                }else{
                    Xoan.FORM_USERNAME_FLAG = true;
                    $(".form_username_required").hide();
                    $(".form_username_duplicated").hide();
                }
            }else{
                Xoan.FORM_USERNAME_FLAG = false;
            }
        });
    });
    $("input#form_email").change(function(){
        Xoan.checkEmailDuplicated(this, function(ret){
            if(ret){
                ret = eval('('+ret+')');
                
                if(ret.status == 'true'){
                    Xoan.FORM_EMAIL_FLAG = false;
                    $(".form_email_duplicated").show();
                    $(".form_email_required").hide();
                    $(".form_email_invalid").hide();
                }else{
                    $(".form_email_required").hide();
                    $(".form_email_duplicated").hide();
                    //$(".form_email_invalid").hide();
                    var $email = $("input#form_email").val();
                    if(!Xoan.checkEmail($.trim($email))){
                        $(".form_email_invalid").show();
                        Xoan.FORM_EMAIL_FLAG = false;
                    }else{
                        Xoan.FORM_EMAIL_FLAG = true;
                        $(".form_email_invalid").hide();
                    }
                }
            }else{
                Xoan.FORM_EMAIL_FLAG = false;
            }
            
        });
    });
}

function galleryDesignSorting(){
    $("#sort_gallery_category").unbind("click").click(function(){
        var search = $('input#s_gallery_category_id').val();

        if(search != ''){        
            var url = $(this).attr('rel') + '/20/1/1/' + search;

            $.get(url, function(html){
                $("#listDesign").html(html);
                checkAllListCheckBox();
                listDesignsPaging();
                bindDesignApprove();
                bindDesignDisapprove();
                bindDesignDelete();
            });
        }

        return false;
    });
}

function commentBlogChooseSearch(){
    $("#btn-commentblog-choose-search").unbind("click").click(function(){
        var option = $('select#comment-option-select').val();
        var search = $('input#comment-choose-search').val();

        if(search == ''){ search = 'blog-search'; }
        
        var url = $(this).attr('rel') + search + '/' + option + '/1';
        
        $.get(url, function(html){
            $("#listDesign").html(html);
            checkAllListCheckBox();
            listDesignsPaging();
            bindDesignApprove();
            bindDesignDisapprove();
            bindDesignDelete();
        });

        return false;
    });
}
*/